 #include <iostream>
#include <vector>
#include <string>
#include <cstring>
using namespace std;
int len(string st) {
    string str = "абвгдеёжзийклмнопрстуфхцчшщъыьэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ";
    int s = 0;
    int b = 0;
    int n1;
    for (auto buk: st) {
        s++;
        n1 = str.find(buk);
        if (n1 != -1) {
            b++;
        }
    }
    s = s - (b / 2);
    return s;
}



int main() {
    string s;
    cout << "Введите слова через пробел: ";
    getline(cin, s);
    vector<string> words;
    string kir = "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ";
    string eng = "abcdefghijklmnopqrstuvwxyz";

    string word = "";
    for (char b: s) {
        if (c == ' ') {
            words.push_back(word);
            word = "";
        } else {
            word += b;
        }
    }
    words.push_back(word);

    if (words.size() <= 1) {
        cout << "Мало данных для анализа" << endl;
    } else {
        int wordCount = words.size();
        int kirilCount = 0;
        int engCount = 0;
        int lt3Count = 0;
        int defCount = 0;
        string longestWord = "";

        for (string w: words) {
            int n = kir.find(w[0]);
            if (n != -1 && isupper(w[0])) {
                kirilCount++;
            }
            for (char b: w) {
                int num = eng.find(tolower(b));
                if (num != -1) {
                    engCount++;
                    break;
                }
            }
            if (len(w) <= 3) {
                lt3Count++;
            }
            if (w.find('-') != string::npos) {
                defCount++;
            }
            if (len(w) > len(longestWord)) {
                longestWord = w;
            }
        }

        cout << "Кол-во слов: " << wordCount << endl;
        cout << "Кол-во слов с заглавной кириллической буквы: " << kirilCount << endl;
        cout << "Кол-во слов, содержащих латинский символ: " << engCount << endl;
        cout << "Кол-во слов, не превышающих 3 символа: " << lt3Count << endl;
        cout << "Кол-во слов, в составе которых имеется дефис: " << defCount << endl;
        cout << endl;
        cout << "Самое длинное слово: " << longestWord << endl;
        cout << "Длина слова: " << len(longestWord) << endl;
    }
    return 0;
}

